package com.songlanyun.modules.ad.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.songlanyun.common.drive.RootEntity;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.*;
import java.io.Serializable;
import java.util.Date;

/**
 * 广告位表
 * 
 * @author Mark
 * @email sunlightcs@gmail.com
 * @date 2020-11-11 13:55:19
 */
@Data
@TableName("yxt_ad_location")
public class AdLocationEntity extends RootEntity<Integer,AdLocationEntity> implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId
	private Integer id;
	/**
	 * 广告位名称
	 */
	@NotBlank(message = "广告位名称不能为空")
	@Length(min = 1, max = 16, message = "广告位名称长度在1-16个字")
	private String name;
	/**
	 * 广告位说明
	 */
	@Length(min = 1, max = 255, message = "广告位说明长度在1-200个字")
	private String remark;
	/**
	 * 广告位标识码（用来做前段输出）
	 */
	@NotBlank(message = "广告位标识码不能为空")
	@Length(min = 1, max = 30, message = "广告位标识码长度在1-30个字")
	private String markCode;
	/**
	 * 0广告位的类型（普通广告位，一次只能随机显示一张广告图），1、幻灯广告位(按顺序显示)
	 */
	private Integer adLocationType;
	/**
	 * 宽
	 */
	@Min(value = 1,message = "宽最小是1")
	@Max(value = 9999,message = "宽最大是9999")
	private Integer width;
	/**
	 * 高
	 */
	@Min(value = 1,message = "高最小是1")
	@Max(value = 9999,message = "高最大是9999")
	private Integer height;
	/**
	 * 广告位类型（0，平台广告位，1商家店铺广告位）
	 */
//	@NotNull(message = "广告位类型不能为空")
	private Integer ownerType;
	/**
	 *
	 */
	@TableField(fill = FieldFill.INSERT)
	private Date createTime;
	/**
	 *
	 */
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private Date updateTime;

	@Override
	public Integer getIdentity() {
		return id;
	}
}
